package ed.view;

import java.io.IOException;
import java.io.PrintWriter;

import ed.model.AccesBD;
import ed.model.Utilisateur;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class Creercompte extends HttpServlet {

    private static final long serialVersionUID = 1L;

    // Si on tente d'accéder directement à la Servlet, on redirige vers index.jsp
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        HttpSession session = request.getSession(true);
        Utilisateur currentuser=null;
        currentuser=(Utilisateur) session.getAttribute("user");
         if(currentuser!=null){
             request.setAttribute("view_right", "index");
             getServletContext().getRequestDispatcher("/index.jsp")
                    .forward(request, response);
         }
         else{
           request.setAttribute("view_right", "creercompte");
           getServletContext().getRequestDispatcher("/index.jsp")
                    .forward(request, response);  
         }
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // Récupération des données du formulaire 
        
        String emailUtilisateur = request.getParameter("emailUtilisateur");
        String motdepasseUtilisateur = request.getParameter("motdepasseUtilisateur");
        String nomUtilisateur = request.getParameter("nomUtilisateur");

        AccesBD lAccesBD= new AccesBD(); 
        Utilisateur u = lAccesBD.getUserByEmail(emailUtilisateur, 0);
        
        if (!emailUtilisateur.equals("") && !motdepasseUtilisateur.equals("") && !nomUtilisateur.equals("")) {
           if (u!=null) {
                request.setAttribute("erreur", "Cet email existe déjà");
                request.setAttribute("view_right", "connexion");
                getServletContext().getRequestDispatcher("/index.jsp")
                        .forward(request, response);
            } else {
               u = new Utilisateur(nomUtilisateur, emailUtilisateur, motdepasseUtilisateur, "User");
               lAccesBD.saveUser(u,0);
               request.setAttribute("view_right", "connexion");
               getServletContext().getRequestDispatcher("/index.jsp")
                        .forward(request, response);
            } 
        }
        else{
            request.setAttribute("erreur", "Tous les champs ont obligatoires");
                request.setAttribute("view_right", "connexion");
                getServletContext().getRequestDispatcher("/index.jsp")
                        .forward(request, response);
        }

            
    }
}